#include <iostream>
#include <string>
#include <math.h>
#include <unordered_map>
using namespace std;

const double AVOGADRO_CONSTANT = 6.022;

struct atomStatus {
    string name;
    double mass;
    double APF; // 原子堆积因子
    double radius; // 原子半径
};

atomStatus elemList[17] =
{
    { "Po",   208.998, 0.52360, 1.68 },
    { "Li",     6.941, 0.68017, 1.52 },
    { "Na", 22.989770, 0.68017, 1.86 },
    { "Cr",   51.9961, 0.68017, 1.28 },
    { "Mn", 54.938049, 0.68017, 1.27 },
    { "Fe",    55.845, 0.68017, 1.26 },
    { "Mo",     95.94, 0.68017, 1.39 },
    { "Ta",  180.9749, 0.68017, 1.46 },
    { "Al", 26.981538, 0.74048, 1.43 },
    { "Ca",    40.078, 0.74048, 1.97 },
    { "Ni",   58.6934, 0.74048, 1.24 },
    { "Cu",    63.546, 0.74048, 1.28 },
    { "Ge",     72.64, 0.74048, 1.22 },
    { "Ag",  107.8682, 0.74048, 1.44 },
    { "Pt",   195.078, 0.74048, 1.39 },
    { "Au", 196.96655, 0.74048, 1.44 },
    { "Pb",     207.2, 0.74048, 1.75 }
};
// 注：该部分数据直接复制自https://gitee.com/ZHY_MARIO/noj/tree/main的仓库源码，
// 那张破元素周期表的图字太小了，根本不想看，
// 感谢前辈，要不是前辈的仓库没有开源协议，我就在这里注明了。

int main(){
    int times;
    cin >> times;
    unordered_map<string, atomStatus> statusDic;
    for (int i = 0; i < 17; i++) {
        statusDic[elemList[i].name] = elemList[i];
    }
    for (int j = 0; j < times; j++) {
        string atomName;
        cin >> atomName;
        double volume = 4.0 / 3.0 * M_PI * pow(statusDic[atomName].radius, 3);
        double density = 10.0 * statusDic[atomName].APF * statusDic[atomName].mass / volume / AVOGADRO_CONSTANT;
        printf("%.2lf\n", density);
    }

}